home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Programming Sound Cards
/
Programming Sound Cards.iso
/
sound_36
/
pb-sb120.exe
/
DEMO.BAS
< prev
next >
Wrap
BASIC Source File
|
1995-01-20
|
5KB
|
126 lines
'****************************************************************************
'
' -=≡ Sound Blaster(tm) Unit für PowerBasic 3.0c ≡=-
' Version 1.20
'
' >>> Demonstrationsprogramm zur Unit <<<
'
'
' entwickelt: 1994/95 von Th.Gohel
'
' Fido: 2:2410/308.12
' BasNet: 130:1313/102
' Internet: Th.Gohel@wibo.berlinet.in-berlin.de
'
'
' Achtung: Eventuell läuft die Unit nicht in der IDE, da unter anderem
' nicht die INI-Datei gefunden wird oder einfach der Speicher
' innerhalb der IDE nicht ausreicht.
' Bitte kompilieren Sie das Programm und starten es außerhalb
' der IDE als EXE-Datei.
'
' Hinweis: Zur wirkungsvollen Demonstration wurde von mir eine Effect-Unit
' beigelegt, welche diverse Routinen zur besseren Darstellung
' der Unit enthält. Diese Routinen sind sehr leicht zu erkennen,
' da sie alle prinzipiell per CALL aufgerufen werden.
'
'
'****************************************************************************
$COMPILE EXE "DEMO-NEU.EXE"
$LIB ALL ON
$INCLUDE "DEFFECT.H"
:' Headerdatei für die Effekte
$INCLUDE "SBLASTER.H"
:' Unit einlinken sowie Variablen
:' und Funktionen deklarieren,
:' eventuell noch den Pfad zur
:' zur SBLASTER.PBU angeben oder
:' in PB ein Unit-Verzeichnis ein-
:' richten,
ON ERROR GOTO FEHLER :' kann ja immer passieren
SBIniFile$ = "SBLASTER.INI" :' Name der INI-Datei
SBDrvFile$ = "SBLASTER.DRV" :' Name der Libary
CALL Intro :' DEFFECT.PBU
PRINT "Sound Blaster initialisieren (J/RETURN) oder Speakerroutine nutzen (S) ??";
A$ = UCASE$(INPUT$(1))
PRINT
PRINT
IF A$ <> "S" THEN
SBInit(32) :' Init mit Vocbuffer 32*4096 Bytes
IF SBError% <> 0 THEN GOTO FEHLER
END IF
A$=""
MixerEinstellung:
SBVoiceVolume 32,32 :' Voice Lautstärke einstellen
SBFMVolume 28,28 :' MIDI Lautstärke einstellen
HauptDemo:
SBVoicePlay("demo1.voc") :' Play Voc-File
SBVoiceWait :' Warten auf Ende der Voc-Datei
DELAY 1 :' 1 Sekunde warten
SBVoicePlay("demo2.voc") :' Play Voc-File
CALL LoadPCX16("demo.pcx")
' DEFFECT.PBU
CALL UhrZeit("STARDATE") :' DEFFECT.PBU
LOCATE 16, 9
PRINT " -=≡ PowerBasic 3.0c - The Next BASIC Generation !!!! ≡=- "
COLOR 14
SBMidiPlay("demo.mid") :' Play MIDI-File
SBVoiceWait :' Warten auf Ende der Voc-Datei
SBVoicePlay("demo3.voc") :' Play Voc-File
SBVoiceWait :' Warten auf Ende der Voc-Datei
DELAY 2 :' 2 Sekunden warten
SBVoiceVolume 32,1 :' Voice Lautstärke einstellen
SBVoicePlay("demo4.voc") :' Play Voc-File
CALL LaufSchrift1 :' DEFFECT.PBU
SBVoiceVolume 32,32 :' Voice Lautstärke einstellen
FOR I%=1 TO 3 :' Applaus 3x mal spielen
SBVoicePlay("demo5.voc") :' Play Voc-File
CALL LaufSchrift1 :' DEFFECT.PBU
NEXT I% :' und nochmal 3x
LOCATE 17, 1
DO WHILE LEN(A$) = 0 :' warten auf User
' Midi-File solange spielen bis User
' eine Taste drückt
IF SBMidiStatus% = 0 AND SBAktiv% = 1 THEN
SBMidiPlay("demo.mid")
' und noch mal ein Sample
SBVoicePlay("demo1.voc")
END IF
A$=INKEY$ :' Demo genug betrachtet??
CALL LaufSchrift2 :' DEFFECT.PBU
LOOP
SBVoicePlay("sbsetup.voc") :' Play Voc-File
CALL LaufSchrift1 :' DEFFECT.PBU
SBVoicePlay("demo6.voc") :' Play Voc-File
SBMidiStop :' MIDI Wiedergabe stoppen
CALL LaufSchrift1 :' DEFFECT.PBU
ENDE:
SBDeInstall :' SB deinstallieren (sehr wichtig!!)
COLOR ,,0
PRINT
END :' Programm beenden
'***************************************************************************
' Hier sollten Sie nicht hingelangen ;-)
'***************************************************************************
FEHLER:
PRINT
PRINT
PRINT "Es ist ein Fehler aufgetreten, Programm beendet (siehe 'ERROR.TXT')"
PRINT
PRINT "PowerBasic Code : ";Err
PRINT "SB-Unit Fehlercode: ";SBError%
SELECT CASE SBError%
CASE 2009: PRINT: PRINT "Fehler: kein SB Environment oder Ini-Datei (bitte SBSETUP ausführen!!)"
CASE 2040: PRINT: PRINT "Fehler: Treiberbibliothek nicht gefunden (bitte SBSETUP ausführen!!)"
END SELECT
SBDeInstall
END